#!/usr/bin/env python
# Author: Gordon.Wang
product_list = [
    ("Phone", 8800),
    ("PC", 8000),
    ("台式电脑", 4000),
    ("智能手表", 900),
    ("智能手环", 400),
    ("儿童手表", 200),
    ("python编程", 98)
]
shopping_list = []   # 定义一个购买清单的列表
salary = input("请输入你的金额：")
if salary.isdigit():     # 函数isdigit判断输入是否为数字
    salary = int(salary)
    while True:    # 死循环
        for index, item in enumerate(product_list):  # enumerate函数取得取到索引及表项，其中index为索引，item为列表值
            print(index, item)   # 打印物品序列号及清单
        choice = input("请选择购买的商品：")
        if choice.isdigit():
            choice = int(choice)
            if len(product_list) > choice >= 0:
                p_item = product_list[choice]  # 商品列表
                if p_item[1] <= salary:    # 表示金额可以买得起商品,p_item[1]为金额，p_item[0]为商品
                    shopping_list.append(p_item[0])   # 加入购物车
                    salary -= p_item[1]   # 减去金额
                    print(f"你的购物车中新加商品为{p_item},还有余额{salary}元")
                else:
                    print(f"你的余额为：{salary}元,无法购买此商品，请选择其他商品")
        elif choice.upper() == 'Q':   # 遇到q或Q就退出，并打印购物清单及还有多少金额
            print("购买清单如下：".center(30,'-'))
            for p in shopping_list:
                print(p)
            print(f"还有剩下{salary}元")
            exit()
        else:
            print("没有这一项，请重新选择或退出")
else:
    print("输入不正确，请重新输入")